Computer systems are often protected by a logon program and/or other subsequent authentication programs that determine whether a user has permission to access certain computer system resources. By way of example, a networked computer may require that a user input a valid user name and password before the user is allowed to access network resources. Similarly, a Web site on the World Wide Web (WWW) portion of the Internet or on an intranet may require a valid user ID and password before the user is allowed to gain further access to various resources.
Controlling user access is not limited to networked computers. A single computer that is accessed by several users may also need to limit access to files and/or various programs therein. Thus, for example, in a home environment, a parent may decide to limit a child's access to the computer entirely, certain programs and/or certain data. Similarly, in a business environment, certain users may have limited access.
Controlling access to computers as described above is well known. Typically, there is an initial logon program or the like that requests user input, receives the user input and determines if the user is allowed access. Once the user has been authenticated, then other programs are allowed to operate. For example, in a networked operating system environment, during the booting-up of a personal computer (PC) or like device connected to the network, the user is typically presented with a modal dialog requesting a user name and associated password. In this example, the modal dialog is displayed by the network's logon program. For a single PC, a logon program associated with the operating system may display a similar modal dialog.
In either case, the modal dialog tends to be tightly integrated within the logon program code of the network software and/or operating system software. As a result, it is often difficult and expensive to significantly alter the modal dialog or otherwise to introduce new functional and nonfunctional features, such as those typically associated with conventional graphical user interfaces (GUIs).
Thus, there is need for improved methods and arrangements that provide enriched techniques for identifying users to an operating system. Preferably, the methods and arrangements will allow for a more advanced GUI to be presented to the user, while also remaining easy for the developer to maintain and modify.